package net.sourceforge.jweb.annotation;

@java.lang.annotation.Target(value = { java.lang.annotation.ElementType.METHOD })
@java.lang.annotation.Retention(value = java.lang.annotation.RetentionPolicy.RUNTIME)
@java.lang.annotation.Documented
public @interface Application {
	/**
	 * application id defination
	 * 
	 * @return
	 */
	int id();

	/**
	 * application parent id defination default -1, means it is root
	 * 
	 * @return
	 */
	int parentId() default -1;

	/**
	 * unique key for this application, can be used for locale specialized
	 * 
	 * @return
	 */
	String key();

	/**
	 * application name
	 * 
	 * @return
	 */
	String name();

	/**
	 * application desc
	 * 
	 * @return
	 */
	String desc() default "";

	/**
	 * icon used
	 * 
	 * @return
	 */
	String icon() default "";

	/**
	 * sort key
	 * 
	 * @return
	 */
	int sort() default 0;

	/**
	 * ignore this application or not
	 * 
	 * @return
	 */
	boolean ignored() default false;
}
